
<template id="solvable-abelian-template">
    <p>${Group.name} is <a href="./help/rf-groupterms/index.html#solvable-group-solvable-decomposition">solvable</a>
        because it is <a href="./help/rf-groupterms/index.html#abelian-group">abelian</a>.</p>
</template>

<template id="solvable-isSolvable-template">
    <p>${Group.name} is a <a href="./help/rf-groupterms/index.html#solvable-group-solvable-decomposition">solvable</a>
        group by the following solvable decomposition:</p>

    <ul id="solvable-decomposition" style="list-style-type: none"></ul>

    <p>In summary, ${decompositionDisplay}.</p>

    <p>You can see a diagram of all the groups in the solvable decomposition,
        including quotient maps, by
        <a href="" data-action="SolvableInfo.showSolvableDecompositionSheet('CDElement')">Cayley diagram</a>,
        <a href="" data-action="SolvableInfo.showSolvableDecompositionSheet('CGElement')">cycle graph</a>, or
        <a href="" data-action="SolvableInfo.showSolvableDecompositionSheet('MTElement')">multiplication table</a>.
    </p>
</template>

<template id="solvable-decomposition-element-template">
    <li>The <a href="./help/rf-groupterms/index.html#quotient-group">quotient</a> of
        ${makeGroupRef(g)}</a> by its
        <a href="./help/rf-groupterms/index.html#normal-subgroup">normal subgroup</a>
        <i>H</i><sub>${g.subgroupIndex}</sub>
        (<a href="./help/rf-groupterms/index.html#isomorphism-isomorphic">isomorphic</a> to
        ${makeGroupRef(g.subgroupIsomorphicTo)}) gives
        ${makeGroupRef(g.quotientIsomorphicTo)}.</li>
</template>

<template id="solvable-decomposition-termination-template">
    <li>The group ${makeGroupRef(g)} is
        <a href="./help/rf-groupterms/index.html#abelian-group">abelian</a>.</li>
</template>

<template id="solvable-unsolvable-template">
    <p>${Group.name} is not a
        <a href="./help/rf-groupterms/index.html#solvable-group-solvable-decomposition">solvable</a> group.</p>
</template>

<template id ="solvable-simple-template">
    <p>In fact, it does not even have a
        <a href="./help/rf-groupterms/index.html#normal-subgroup">normal subgroup</a>
        that can be used to form an <a href="./help/rf-groupterms/index.html#abelian-group">abelian</a>
        <a href="./help/rf-groupterms/index.html#quotient-group">quotient</a> group.</p>
</template>

<template id="solvable-failure-template">
    <p>Group Explorer is currently unable to determine whether ${Group.name} is a
        <a href="./help/rf-groupterms/index.html#solvable-group-solvable-decomposition">solvable</a> group because it does
        not have access to all the groups it needs. For example, there is a
        <a href="./help/rf-groupterms/index.html#normal-subgroup">normal subgroup</a>
        of order ${unknown_subgroup.order} that yields an
        <a href="./help/rf-groupterms/index.html#abelian-group">abelian</a>
        <a href="./help/rf-groupterms/index.html#quotient-group">quotient</a> group, but that is not
        <a href="./help/rf-groupterms/index.html#isomorphism-isomorphic">isomorphic</a> to any group in
        the library currently loaded.</p>
    <p>You will need to more groups loaded (see <a href="">options window</a> for starters)
        to make this computation possible.</p>
</template>

<template id="solvable-trailer-template">
    <button class="gap-compute" style="grid-column: content / end; margin-left: 1em"
            data-action="ShowGAPCode.setup('checking if a group is solvable', Group)">Compute this in GAP</button>
</template>

<template id="group-reference-template">
    <a href="" style="text-decoration: none"
       data-action="Library.openWithGroupURL('GroupInfo.html', '${G.URL}')">${G.name}</a>
</template>
